A Programmer Friendly Modular Definition of the Semantics of Java
نویسندگان
چکیده
We propose in this paper a de nition of the semantics of Java programs which can be used as a basis for the standardization of the language and of its implementation on the Java Virtual Machine. The de nition provides a machine and system independent view of the language as it is seen by the Java programmer. It takes care to directly re ect the description in the Java language reference manual so that the basic design decisions can be checked by standardizers and implementors against a mathematical model. Our de nition is the basis for a related de nition we give in a sequel to this paper for the implementation of Java on the Java Virtual Machine as described in the language and in the Virtual Machine reference manuals.
منابع مشابه
A high-level modular definition of the semantics of C#
We propose a structured mathematical definition of the semantics of C# programs to provide a platform-independent view of the language for the C# programmer, which can also be used for a precise analysis of the ECMA [7] standard of the language. The definition takes care to reflect directly and faithfully – as much as possible without becoming inconsistent or incomplete – the descriptions in th...
متن کاملJava : Memory Consistency and Process Coordination � ( Extended
In Java, some memory updates are necessarily visible to some threads but never to others. A definition of Java memory consistency must take this fact into consideration to capture the semantics of non-terminating systems, such as a Java operating system. This paper presents a programmer-centered formal definition of Java memory behavior that captures those semantics. Our definition is employed ...
متن کاملProgramming in logic without Prolog
Logic can be made useful for programming and for databases independently of logic programming. To be useful in this way, logic has to provide a mechanism for the definition of new functions and new relations on the basis of those given in the interpretation of a logical theory. We provide this mechanism by creating a compositional semantics on top of the classical semantics. In this approach, v...
متن کاملJava: Memory Consistency and Process Coordination
In Java, some memory updates are necessarily visible to some threads but never to others. A definition of Java memory consistency must take this fact into consideration to capture the semantics of non-terminating systems, such as a Java operating system. This paper presents a programmer-centered formal definition of Java memory behavior that captures those semantics. Our definition is employed ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999